In SIP networks, sometimes intermediary network elements, e.g., a session border controller (SBC), need to generate an autonomous SIP request. An autonomous request is a request, which is not generated due to the receipt of a request from another network element but generated by the intermediary as part of some functionally and/or procedure.
FIG. 1 is a drawing 100 illustrating a secession border controller (SBC) 102, a first device 104, a second device 106 and exemplary signaling. FIG. 1 illustrates 2 types of requests that are generated by the SBC 102, a non-autonomous request and an autonomous request.
In step 108 the first device 104 generates and transmits request 1 110. In step 112 the session border controller receives request 1 110. In step 114, in response to received request 1 110, the SBC 102 generates and transmits request 1′ 116, which is a non-autonomous request. Non-autonomous request 1′ 116 was generated by SBC 102 because of the receipt of request 1 110. In step 118 non-autonomous request 1′ 116 is received by the second device 106.
In step 120, the SBC generates and transmits request 2 122, which is an autonomous request. Autonomous request 2 122 was generated by SBC 102 to satisfy some functionality/procedure. In step 124 second device 106 receives autonomous request 2 122.
FIG. 2 is a drawing 200 illustrating an example in which an autonomous request is needed. Drawing 200 of Figured 2 illustrates a secession border controller (SBC) 202, a first device 204, a second device 206 and exemplary signaling. Consider that in steps (208, 210, 212) the devices (first device 208, SBC 202, second device 212) have been operated, respectively to establish a stable call including stable call leg A 214 and stable call leg A′ 216. Further consider that leg A 214 supports G.711, while leg A′ 216 supports G.711 and T.38.
Consider that in steps (218, 220) the devices (first device 204, SBC 202) are operated, respectively to send and received G.711 stream signals 224 over leg A. Further consider that in steps (221, 222) the devices (SBC 202, second device 206) are operated, respectively, to send and received G.711 stream signals 226 over leg A′.
In step 228, SBC 202 detects a fax tone. In step 230 the SBC 202 decides to invite leg-A′ to T.38 and will transcode between G.711 and T.38 as leg-A does not support T38; the SBC 202 knows through configuration which legs support which protocols. Based on the detected fax tone, the SBC re-negotiates the session toward one leg to use T.38 for fax transmission or sends a re-INVITE to lock-down on a single codec if the session answer has more than one codec. In step 232 the SBC generate and transmits a re-Invite 234 including SDP: T.38 information 240, e.g., a parameter indicating the T.38 fax relay standard.
A general problem with autonomous requests off the intermediaries is authentication. Successful authentication of a request requires access to credentials, e.g., password corresponding to an identity, and is usually not available to intermediaries causing autonomous request to be unsuccessful if the autonomous requests are challenged. Drawing 300 of FIG. 3 illustrates an SBC 302, an authenticating entity 304, and exemplary signaling. Drawing 300 illustrates an example, in which an autonomous request is challenged and the SBC does not have credentials.
In step 306 SBC 302 generates and transmits an autonomous request 308 including no authorization header. The autonomous request 308 is received by the authenticating entity in step 310. The authenticating entity decides to challenge the received autonomous request 308. In step 312, the authenticating entity generates and transmits a SIP 401 (unauthorized message) 314 including a challenge that is the included WWW-Authenticate header 316. In step 318 the SBC 302 receives the SIP 401 message. In step 320 the SBC determines that it does not have access to the credentials and cannot send the autonomous request with credentials and the relevant procedure fails.
Based on the above discussion, there is a need for new methods and apparatus for supporting authentication of autonomous requests sent intermediate network devices, e.g., session border controllers.